package edu.langnan.xiaoli.service;

import edu.langnan.xiaoli.config.security.LoginUser;
import edu.langnan.xiaoli.core.domain.StudentDO;
import edu.langnan.xiaoli.core.dto.LoginBodyDTO;
import edu.langnan.xiaoli.core.dto.LoginInfoDTO;
import edu.langnan.xiaoli.core.dto.StudentDTO;

import java.util.Date;

/**
 * @author cql
 */
public interface StudentService {

    /**
     * 根据学号查找学生信息
     *
     * @param stuNo
     * @return
     */
    StudentDO findStudentByStuNo(String stuNo);

    /**
     * 学生登录,登录成功返回Token
     *
     * @param loginBody
     * @return
     */
    LoginInfoDTO login(LoginBodyDTO loginBody);

    /**
     * 获取学生有关信息
     *
     * @param loginUser
     * @return
     */
    StudentDTO findStuInfo(LoginUser loginUser);

    /**
     * 更新记录信息
     *
     * @param stuId
     * @param avatar
     * @param openId
     * @param now
     */
    void updateInfo(Integer stuId, String avatar, String openId, Date now);
}
